import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
    state: {
        // 定义数据
        user: {
            name:""
        }
    },
    // 唯一取值的方法
    getters: {
        getUser(state) {
            return state.user
        }
    },
    // 唯一修改值的方法，同步阻塞的
    mutations: {
        updateUser(state, user) {
            state.user = user
        }
    },

    // 异步调用mutations中的方法
    actions: {
        asyncUpdateUser(context, user) {
            context.commit('updateUser', user)
        }
    },
    modules: {
    }
})
